package cn.itsource.util;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 这个类是封装返回给前端的数据的
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class AjaxResult {
    //    这是状态码
    private String code = BlogConstant.SUCCESS;
    //    这是请求成功或者失败的返回值
    private Boolean success = true;
    //    返回信息
    private String Message = "操作成功";
    //    封装返回的数据对象
    private Object data;

    //    返回成功的,不带数据
    public static AjaxResult Success() {
        return new AjaxResult();
    }

    //        返回成功的,带数据
    public static AjaxResult Success(Object data) {
        return new AjaxResult(BlogConstant.SUCCESS, true, "操作成功", data);
    }

    //        返回失败的
    public static AjaxResult error(String code, String message) {
        return new AjaxResult(BlogConstant.LOGIN_TIMEOUT, false, message, null);
    }

    //    系统异常导致的错误
    public static AjaxResult error(String message) {
        return  error(BlogConstant.SYSTEM_ERROR, message);
    }
}
